The use of advanced machine vision systems and their underlying software is increasingly employed in a variety of manufacturing and quality control processes. Machine vision enables quicker, more accurate and repeatable results with fewer errors to be obtained in the production of both mass-produced and custom products. Basic machine vision systems include one or more cameras (typically having solid-state charge couple device (CCD) imaging elements) directed at an area of interest, frame grabber/image processing elements that capture and transmit CCD images, a computer and display for running the machine vision software application and manipulating the captured images, and appropriate illumination on the area of interest.
Many applications of machine vision involve the inspection of components and surfaces for defects that affect quality. Where sufficiently serious defects are noted, a part of a surface is marked as unacceptable/defective. Machine vision has also been employed in varying degrees to assist in manipulating manufacturing engines in the performance of specific tasks. Specifically, machine vision systems may be utilized for inspection of components along an assembly line to ensure that the components meet a predefined criteria before insertion and/or assembling of the components into a finished product. Machine vision systems may also be utilized for locating both those components and the product being assembled so that the insertion and/or assembly equipment can assemble the finished product automatically without human intervention.
Machine vision systems are typically utilized in alignment and inspection of devices having a ball grid array (BGA) form factor. BGA devices typically include a plurality of small solder balls on a mounting side of the device. The solder balls may then be soldered using ultrasound and/or infrared technology once a device is appropriately placed on a circuit board. The number of solder balls on BGA devices have dramatically increased so that current BGA devices may have on the order of thousands of balls. Furthermore, modern BGA devices typically have the solder balls less aligned on a grid pattern, i.e., the solder balls are non-uniformly spaced on the component. Additionally, BGA devices may now utilize non-uniformly sized and/or non-circular solder balls/solder points, e.g., solder balls of varying sizes and/or shapes.
These trends complicate current machine vision systems that are utilized for the alignment and/or inspection of BGA devices. As the number of balls grows very large, current methods that rely on extracting balls or otherwise measuring ball features typically execute at a speed that is unacceptably slow for run time. Furthermore, as the patterns of balls become more complex, search-based approach to alignments may enter worst-case scenarios. This may occur because a small misalignment in the translational degree of freedom or the rotation angle may mean that a majority of individual features match thereby increasing the probability of an incorrect match occurring.
Additionally, prior art machine vision systems are typically incapable of performing alignment and/or inspection when balls are not uniform in size and/or shape. The combination of increasing number of balls, varying size and/or shape and the non-uniform spacing of balls prevents current machine vision implementations from effectively aligning and/or inspecting BGA devices at a commercially acceptable rate of speed and efficiency.